01-020. 데이터 분석과 수학
데이터 분석과 수학
데이터 분석은 통계학에서 출발했고 통계를 잘하기 위해서는 수학을 알아야 한다고 앞에서 설명했었다.
그래서 데이터 분석을 잘하려면 수학을 잘하는 것이 좋다.
책에 수학 얘기나 수식이 나오면 수식이 포함된 분량 만큼 책이 잘 안팔린다는 우스갯소리가 있다.
책을 많이 팔고 싶다면 이 책에서 수학 얘기를 하지 않고 수식도 적지 않아야하고 수학은 안배워도 데이터 분석을 잘 할 수 있다고 말해야 할 것이다. 수식은 책에 넣지 않을 수 있겠지만 수학이 없어도 데이터 분석을 잘 할 수 있다는 말은 사실이 아니다. 다만 수학을 잘하면 유리한 것이지만 못한다고 해서 시작을 못하는 것은 아니다. 데이터 분석은 수학을 잘하지 않아도 할 수 있는 영역이 많으며 그런 영역부터 시작해서 수학 실력을 키워나가면서 데이터 분석 능력을 함께 키워나갈 수 있다.
예를 들어 엑셀로 데이터 탐색이나 보고서를 작성하는 것은 단순 사칙연산이나 엑셀에서 제공하는 함수를 사용하면 되므로 수학에 약해도 데이터 분석을 할 수 있다. 하지만 그 보다 더 복잡한 고급 통계 분석을 하거나 기계하습, 데이터로 부터 가치를 찾고 판단을 할 때는 수학 지식이 더 필요하다.
그래서 어떤 사람들은 데이터 분석이나 통계를 배우기 전에 수학 공부를 먼저 시작하지만 많은 시간을 투자해야 한다.
결론적으로 데이터 분석을 막 배우기 시작할 때 어려운 수학 공부를 먼저 할 필요는 없다.
다행히 고성능 AI챗봇의 출현으로 학습하는 방식도 바뀌기 시작했다. 사칙 연산을 이용한 단순 한 계산에서 평균, 표준편차와 같은 계산법과 활용도를 이해하고 그 뒤에 더 복잡한 것을 필요할 때마다 빠르게 알아가도 될 것이다.
이 책에 복잡한 수학은 나오지 않는다. 수식이 나올 수 있다. 하지만 AI챗봇의 도움을 받을 것이므로 머리아플 것 없다.
데이터 분석에 필요한 수학
데이터 분석에 필요한 수학은 단순 사칙연산를 제외하고는 대부분 수학 과목에서 가르치는 주요 대수학들이다. 고등하교까지 우리는 기초 수학과 대수학 중에 일부를 배운다. 그런 것중에 일부는 데이터 분석에 핈요한 것들이다.
((프롬프트)): 데이터 분석을 위해 필요한 기초 수학을 알려주세요 ((AI챗봇 답)):
- 선형대수학
- 벡터와 행렬, 행렬 연산(덧셈, 곱셈, 전치, 역행렬)
- 고유값, 고유벡터, 벡터 공간과 기저
- 미적분학
- 도함수, 편미분, 그래디언트(기울기)
- 적분(확률 분포, 기대값 계산 등)
- 확률과 통계
- 확률 분포(정규분포, 이항분포 등)
- 평균, 중앙값, 분산, 표준편차 등 기술통계
- 가설검정, 신뢰구간, p-값 등 추론통계
- 베이즈 정리(조건부 확률)
- 최적화 이론
- 목적함수, 제약조건, 경사하강법, 라그랑주 승수법
- 그래프 이론
- 노드, 엣지, 경로, 연결성, 그래프 알고리즘
- 이산수학
- 집합론, 조합론, 논리학
이러한 수학적 기초는 데이터 분석의 모델 선택, 알고리즘 이해, 결과 해석에 필수적입니다. 특히 머신러닝, 딥러닝 분야에서는 더욱 중요하게 다뤄집니다.
많은 사람들이 위의 AI챗봇의 답글에 있는 수학 과목 이름과, 용어에 압도당했을 것이다. 위의 수학 과모은 대학에서 수학을 전공해야 다 배우는 것인데 일부는 이공계 학과에서 많은 양을 배운다. 인문학 계열에서는 배우지 않는다. “선형대수학”과 “확률, 통계”는 데이터 분석에 필수적으로 필요하고 다른 것들은 고급 통계 분석이나 기계학습, 인공지능에 필요한 것이다.
"대수학"은 수학의 한 분야인데 여러 대수학이 있다. 대수학이 “큰 수학”이라는 뜻은 아니다. 수학의 기본적인 연산과 규칙을 구분지어서 나누어 두었고 선형대수학 같은 것도 여러 대수학 중의 하나이다. 대수학 중에 쉬운 것 일부는 중학교에서 배운 것도 있는데 그외 대수학은 수학 전공자나 대학에서 이공계 전공을 하는 것이 아니면 쓸 일이 거의 없을 것이다. 아마도 평생 쓰지 않을 수 있다.
영어에서 "대수학"의 어원은 아랍어 "알지브르(الجبر)"에서 유래한 것으로 알려져 있고 "복원" 또는 "합치다"라는 뜻이다. 단순하게 수학의 분야를 구분짓는 접미어로 생각하면 된다. 대수학 중에서도 데이터 분석과 공학에 쓰이는 몇가지가 있는데 여기에서는 이런 수학 몇개에 대해서 어떤 것들인지 미리 설명한다.
선형대수학(Linear Algebra)
선형대수학은 벡터와 행렬을 다루는 대수학의 한 분야다. 명칭에서부터 어려움이 느낄텐데 대수학 중에서 선형대수학은 비교적 쉬운 수학인데 기초 부분은 비교적 어렵지 않다. 쉽다는 말은 아니지만 그렇다고 너무 겁을 먹지 않아도 된다.
((프롬프트)): 선형대수학에 대해서 알기 쉽게 설명해 주세요
((AI챗봇 답)):
선형대수학은 데이터를 다루는 데 꼭 필요한 수학 분야 중 하나입니다.
쉽게 말해, 선형대수학은 '벡터'와 '행렬'이라는 도구를 사용해서 여러 개의 숫자를 한 번에 다루고, 이 숫자들 사이의 관계를 연구하는 학문입니다.
-
벡터는 여러 개의 숫자를 한 줄로 나열한 것(예: [2, 5, 7])을 말합니다.
예를 들어, 한 학생의 국어, 영어, 수학 점수를 [80, 90, 70]처럼 하나의 벡터로 표현할 수 있습니다. -
행렬은 벡터를 여러 개 모아 표처럼 만든 것입니다.
예를 들어, 여러 학생의 점수를 표로 정리하면 행렬이 됩니다.
선형대수학에서는 벡터와 행렬을 더하거나 곱하는 등 다양한 연산을 배웁니다.
이런 연산을 통해 데이터를 변환하거나, 여러 변수 사이의 관계를 분석할 수 있습니다.
데이터 분석, 머신러닝, 인공지능에서는 수많은 데이터를 효율적으로 처리하고, 복잡한 연산을 빠르게 하기 위해 선형대수학의 개념이 필수적으로 사용됩니다.
즉, 선형대수학은 데이터를 구조적으로 표현하고, 여러 데이터를 한 번에 계산할 수 있게 해주는 '데이터 분석의 언어'라고 할 수 있습니다.
AI챗봇에게 주는 프롬프트에 알기 쉽게 해달라고 했기 때문에 설명이 쉽게 나왔다. 우선 명칭부터 분해서 살펴보자. 선형대수학에서 "선형"은 "덧셈과 상수(스칼라) 곱셈에 대해 성립하는 관계"를 의미한다. 이런 변화들이 그림으로 그려서 보면 직선처럼 표현되는 관계이기 때문에 “직선의 형태”라는 뜻으로 "선형"이라고 부른다.
((그림)): 찾아서 넣기
그래서 선형대수학은 벡터와 행렬을 여러 방법으로 계산하고 다뤄서 문제를 해결하는 수학 분야로 생각하면 된다.
선형대수학이 있으면 숫자들의 관계가 선형이 아닌 것을 다루는 비선형대수학도 있다. 비선형 대수학도 데이터 분석에 활용되지만 데이터 분석에서는 선형대수학이 더 중요하다.
여러 분이 당장 데이터 분석을 하기 위해서 반드시 선형대수학을 따로 배울 필요는 없다
미적분학(Calculus)
미적분학은 변화하는 양을 다루는 수학 분야이다. 데이터 분석에서는 함수의 변화율과 누적값을 계산하는 데 활용된다.
((프롬프트)): 미적분학이 데이터 분석에 어떻게 활용되는지 쉽게 설명해주세요 ((AI챗봇 답)): 미적분학은 변화하는 값들을 분석하는 수학 분야로, 데이터 분석에서 매우 중요한 역할을 합니다.
-
**미분(Differentiation)**은 어떤 값이 순간적으로 얼마나 빠르게 변하는지를 측정합니다. 예를 들어, 주식 가격이 시간에 따라 얼마나 빠르게 오르내리는지, 또는 온도가 위치에 따라 어떻게 변하는지 알 수 있습니다. 머신러닝에서는 모델을 최적화할 때 '경사하강법'이라는 기법에서 미분이 핵심적으로 사용됩니다.
-
**적분(Integration)**은 변화량의 누적을 계산합니다. 예를 들어, 시간에 따른 속도 데이터가 있을 때, 적분을 통해 이동한 총 거리를 계산할 수 있습니다. 또한 확률 분포에서 특정 범위의 확률을 계산할 때도 적분이 사용됩니다.
데이터 분석과 머신러닝에서 미적분학은 다음과 같이 활용됩니다:
- 최적화: 모델의 오차를 최소화하는 최적의 매개변수를 찾는 데 미분이 사용됩니다.
- 확률 계산: 연속 확률 분포에서 확률을 계산할 때 적분이 필요합니다.
- 신호 처리: 시계열 데이터나 이미지 데이터를 분석할 때 미적분 개념이 활용됩니다.
- 예측 모델링: 변화율을 분석하여 미래 추세를 예측하는 데 도움이 됩니다.
복잡한 수식 없이도 미적분의 기본 개념만 이해하면, 데이터 분석 알고리즘이 어떻게 작동하는지 더 잘 이해할 수 있고, 더 효과적인 분석 방법을 선택할 수 있습니다.
미적분이 본격적으로 나오는 부분은 최적화 문제를 풀거나 학률 문제를 해결해야 할 때이다. 인공지능, 기계학습과 고수준 통계에서 나오므로 데이터 분석을 처음 배우는 사람에게는 아직 필요하지 않다. 미적분이 필요한 대부분의 계산들은 컴퓨터 언어의 모듈이나 소프트웨어의 기능으로 제공되기 때문에 개념만 이해한다면 가져다 쓰는 것은 무리가 없다. 역시 미적분을 따로 공부하지 않아도 된다. 다만 무분별하게 무작정 가져다 쓰기만하면 큰 실수를 하기 쉽고 어려운 문제를 해결하지 못한다. 그래서 원리를 이해하고 넘어가야 하는 점을 기억해야 한다.
확률과 통계(Probability & Statistics)
확률과 통계는 불확실성을 다루는 수학 분야인데 데이터 분석의 핵심 기반이다. 통계는 그 자체로 수학의 한분야이며 학술의 한 분야로 구분하기도 한다.
((프롬프트)): 확률과 통계가 데이터 분석에서 어떤 역할을 하는지 쉽게 설명해주세요 ((AI챗봇 답)): 확률과 통계는 데이터 분석의 근간이 되는 학문으로, 불확실성이 있는 상황에서 데이터를 이해하고 의사결정을 내리는 데 필수적입니다.
-
**확률(Probability)**은 특정 사건이 일어날 가능성을 수치화합니다. 예를 들어, 고객이 특정 제품을 구매할 확률, 환자가 특정 치료에 반응할 확률 등을 계산할 수 있습니다. 이를 통해 미래 상황을 예측하고 리스크를 평가할 수 있습니다.
-
**통계(Statistics)**는 데이터를 수집, 분석, 해석하는 방법을 제공합니다. 표본에서 얻은 정보를 바탕으로 전체 모집단에 대한 추론을 가능하게 합니다. 예를 들어, 1,000명의 설문조사 결과로 전체 인구의 의견을 추정할 수 있습니다.
데이터 분석에서 확률과 통계는 다음과 같이 활용됩니다:
- 데이터 요약: 평균, 중앙값, 표준편차 등을 통해 대량의 데이터를 간결하게 요약합니다.
- 패턴 발견: 상관관계 분석을 통해 변수 간의 관계를 파악합니다.
- 가설 검정: 데이터가 특정 주장을 지지하는지 객관적으로 평가합니다.
- 예측 모델링: 과거 데이터를 기반으로 미래 결과를 예측하는 모델을 구축합니다.
- 의사결정: 불확실성 속에서 최적의 결정을 내리는 데 도움을 줍니다.
확률과 통계의 개념은 머신러닝 알고리즘의 기초가 되며, A/B 테스트, 고객 세분화, 이상 탐지 등 다양한 데이터 분석 기법에 활용됩니다.
확률과 통계는 데이터에서 의미 있는 패턴을 찾고 불확실 것을 정량화하며 마지막에는는 데이터 기반 의사결정을 가능하게 한다. 데이터 분석의 정의와 거의 일치한다. 확률과 통계는 과거에는 데이터 분석의 그 자체라고 해도 틀린 아니었고 아직까지도 데이터 분석의 근간이라할 수 있다. 의사결정은 데이터를 분석하고 나서 얻은 결과로 어떤 일이 성공할 확률이 충분히 높다고 확신되면 그렇게 하기로 결정을 내리고 확률이 낮다면 결정을 보류하는 것으로 의사결정을 하게 된다. 통계적 데이터 분석에서는 우선 데이터를 탐색하고 요약해서 설명하고 특이한 사실이나 관계를 파악한다. 그 후에 의사결정을 위해서는 가설검정이라는 것을 하고 그 밖에 데이터를 이용해서 모델을 만드는 모델링(modeling)이라는 작업이 있다. 모델(model)은 데이터 분석에 포함하지 않고 데이터 과학이나 별도의 작업으로 구별하기도 하지만 만든 모델로 의사결정을 하는데 쓸 수 있다.